package com.wu.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.wu.pojo.ArticleReport;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author: 吴磊
 * @program: blog
 * @create: 2021-05-12 16:43
 */
@Mapper
public interface ArticleReportMapper extends BaseMapper<ArticleReport> {
    /**
     * 插入文章举报内容
     *
     * @param articleReport
     * @return
     */
    Integer insertArticleReport(ArticleReport articleReport);


    /**
     * 通过Id删除举报
     *
     * @param reportId
     * @return
     */
    Integer deleteArticleReportById(@Param("reportId") String reportId);

    /**
     * 通过Ids删除举报
     *
     * @param reportIds
     * @return
     */
    Integer deleteArticleReportByIds(List<String> reportIds);

    /**
     * 获取所有未处理的文章举报
     *
     * @param curPage
     * @return
     */
    List<ArticleReport> getAllArticleReport(@Param("curPage") Integer curPage);


    /**
     * 通过Id查看举报明细
     *
     * @param reportId
     * @return
     */
    ArticleReport getArticleReportById(@Param("reportId") String reportId);

    /**
     * 获取所有文章的举报数
     *
     * @return
     */
    Integer getAllArticleReportCount();

    /**
     * 通过文章Id获取此文章的所有举报Id
     *
     * @param articleId
     * @return
     */
    List<String> getReportIdsByArticleId(@Param("articleId") String articleId);


    /**
     * 通过文章id删除所有评论
     *
     * @param articleId
     * @return
     */
    Integer deleteReportByArticleId(@Param("articleId") String articleId);
}
